Intelligent location-based services

ABSTRACT

A method for dynamically providing location-based services, including receiving at least one user input indicating a request for a suggested point of interest; and generating a query based on the user input and a time reference. In addition, the generated query can be processed to identify a plurality of points of interest. The points of interest can be presented to a user.

CROSS-RELATED APPLICATION

The present invention disclosed herein is a divisional application of USPatent Application Publication No. US20080153512A1, and is incorporatedby reference herein in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention generally relates to mobile stations and, moreparticularly, to mobile stations which identify points of interest.

2. Background of the Invention

Location-based services (LBS) are offered by some mobile communicationsnetworks as a way to send custom advertising and other information to amobile station subscriber based on the subscriber's current location. Toimplement location-based services, a communications service providertypically receives location information for the subscriber's mobilestation. The location information can be, for instance, locationinformation that is generated by a global positioning satellite (GPS)receiver that is built into the mobile station, or location informationestimated by performing radiolocation and trilateration on communicationsignals received from the mobile station by a plurality ofgeographically disperse communication antennas.

One example of a location-based service is a service that identifies tothe user a nearest business of a certain type. For example, the user canquery the location-based service for a list of Italian restaurantswithin a five mile radius, or perhaps request information only on thenearest Italian restaurant. In response, the location-based service canprovide the requested information, and such information can be presentedor the user's mobile station.

Although there certainly is a benefit provided to the user by usinglocation based services, the user still is required to identify specificparameters to be processed by a location-based service before desiredinformation can be provided. Taking the time to specify such parameterscan be inconvenient to a user.

SUMMARY OF THE INVENTION

The present invention relates to a method for dynamically providinglocation-based services. The method can include receiving at least oneuser input indicating a request for a suggested point of interest,generating a query based on the user input and a time reference,processing the generated query to identify a plurality of points ofinterest and presenting the points of interest to a user. The methodfurther can include identifying a particular mode of transportation usedby the user. In such an arrangement, generating the query can be furtherbased on the particular mode of transportation. The method also caninclude identifying a particular route traveled by the user, andgenerating the query can be further based on the particular route.

The present invention also relates to a system that dynamically provideslocation-based services. The system can include a controller thatautomatically identifies at least one user pattern of a user, storeshistorical information that corresponds to the user pattern, andprocesses the historical information to retrieve location-based serviceinformation that corresponds to the identified user pattern in responseto detecting at least one parameter that corresponds to the historicalinformation. The controller can identify the user pattern by identifyinga location visited by the user at a particular time. The controller candetect the parameter that corresponds to the historical information bydetecting that the user is at the identified location.

The controller also can identify the user pattern by identifying alocation visited by the user more than once at a particular time of day,on a particular day of a week, on a particular day of a month, or on aparticular day of a year. In such an arrangement, the controller candetect the parameter that corresponds to the historical information bydetecting the particular time of day, the particular day of the week,the particular day of the month, or the particular day of the year.

The controller also can identify the user pattern by identifying amotion parameter associated with the user. The controller can detect theparameter that corresponds to the historical information by detectingthe motion parameter associated with the user. The controller also canidentify the user pattern by identifying a particular mode oftransportation used by the user.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present invention will be described belowin more detail, with reference to the accompanying drawings, in which:

FIG. 1 depicts a communications system that is useful for understandingthe present invention;

FIG. 2 depicts another communications system that is useful forunderstanding the present invention;

FIG. 3 depicts a block diagram of an intelligence engine that is usefulfor understanding the present invention;

FIG. 4 depicts a block diagram of a mobile station that is useful forunderstanding the present invention;

FIG. 5 is a flowchart that is useful for understanding the presentinvention; and

FIG. 6 is another flowchart that is useful for understanding the presentinvention.

DETAILED DESCRIPTION

While the specification concludes with claims defining features of theinvention that are regarded as novel, it is believed that the inventionwill be better understood from a consideration of the description inconjunction with the drawings. As required, detailed embodiments of thepresent invention are disclosed herein; however, it is to be understoodthat the disclosed embodiments are merely exemplary of the invention,which can be embodied in various forms. Therefore, specific structuraland functional details disclosed herein are not to be interpreted aslimiting, but merely as a basis for the claims and as a representativebasis for teaching one skilled in the art to variously employ thepresent invention in virtually any appropriately detailed structure.Further, the terms and phrases used herein are not intended to belimiting but rather to provide an understandable description of theinvention.

The present invention relates to a method and a system that dynamicallyprovides location-based services (LBS), including receiving at least oneuser input indicating a request for a suggested point of interest; andgenerating a query based on the user input and a time reference. Inaddition, the generated query is processed to identify a plurality ofpoints of interest; and the points of interest are presented to a user.

For example, assume that on past occasions when a user has traveledalong a particular highway at a certain time of day, the user hasstopped at a particular type of location, for instance at fast foodrestaurants. The system can store information relevant to this userpattern as historical information. When the system detects that the useris again traveling along that highway at approximately the same time ofday, the system can process the historical information, along with userpreferences, learned preferences, direction of travel and/or othercontextual information, to identify locations likely to be of interestto the user (i.e. points of interest), and automatically present to theuser information about such points of interest. For instance, the systemcan automatically present information related to fast food restaurantsthat are located at upcoming rest stops and that offer the user'spreferred cuisine. The information can include directions to therestaurants, respective distances from a present location, specialscurrently being offered, and so on.

FIG. 1 depicts a communications system 100 that is useful forunderstanding the present invention. The communications system 100 caninclude a communications network 102 through which a mobile station 106communicates with a location-based services server 104. Thecommunications network 102 can comprise the Internet, the World WideWeb, a wide area network (WAN), a local area network (LAN), a cellularcommunications network, a dispatch communications network, aninterconnect communications network, a public switched telephone network(PSTN), and/or any other networks or systems over which communicationsignals can be propagated. In that regard, the communications network102 can include wired and/or wireless communication links.

The location-based services server 104 can be implemented as anapplication instantiated on a suitable processing device, for example ona web server, a network server, at a mobile switching center (MSC), on abase station controller (BSC), or on any other suitable node of thecommunications network 102. The location-based services server 104 canreceive from the mobile station 106 requests 108 for location-basedinformation. The requests 108 can be intelligently formulated by themobile station 106 based on current and historical information, as wellas user inputs and/or user preferences, to solicit location-basedservices results 110 that are of most interest to a user.

The location-based services server 104 can communicate thelocation-based services results 110 in response to the requests 108. Thelocation-based services results 110 can include information whichidentifies points of interest, for instance businesses, services, parks,recreational areas, or any other places or services that may be ofinterest to a user. The location-based services results 110 also caninclude directions to one or more of the identified points of interest.Further information about the points of interest 110 also can beincluded in the location-based services results 110. Such furtherinformation can comprise indicators of products or services offered,special offers that may be available, or any other related informationthat may be of interest to a user.

The mobile station 106 can be a mobile telephone, a mobile radio, apersonal digital assistant, a mobile computer, a portable gaming device,a portable audio and/or video player, or any other wirelesscommunication device that may communicate with the location-basedservices server 104 via the communications network 102. In that regard,the mobile station 106 can be a handheld device, a device which iscarried on a person, a device which is carried by or in a transportationdevice, such as a vehicle, or can be implemented in any other mannerthat enables the mobile station 106 to communicate with thelocation-based services server 104 from any of a plurality of locations.

An intelligence engine 112 can be instantiated on the mobile station106. In operation, the intelligence engine 112 can receive measuredparameters, for instance time 114, current location parameters 116,current motion parameters 118, and other information, such as userpreferences 120 and other user inputs 122. The intelligence engine 112can process the measured parameters 114-118 and other information120-122 to identify one or more user patterns. For instance, while themobile station 106 is activated, the intelligence engine 112 canassociate the current location parameters 116 with the current time 114and store such associations as historical location information 124. Thehistorical location information 124 can include data pertaining tospecific locations, for instance specific businesses, restaurants,parks, recreational areas, roads, highways, public transportationroutes, and the like. The current time 114 can be a particular time ofday, a particular day of a week, a particular day of a month, aparticular day of a year, or any other suitable time reference. Thehistorical location information 124 also can include a number of times aparticular location is visited and/or a frequency of such visits.

Similarly, the intelligence engine 112 can associate the current motionparameters 118 with the current time 114 and store such associations ashistorical motion information 126. In one arrangement, the historicalmotion information 126 can indicate a particular mode of transportationused by the user. For instance, the historical information 126 canindicate whether the motion likely correlates to use of a bicycle, avehicle, a marine craft, an aircraft, public transportation, or whetherthe motion likely correlates to walking. Further, the historicalinformation 126 also can include a number of times a particular motionis detected and/or a frequency of such motion.

Further, other contextual information 128 can be identified by theintelligence engine 112 and stored. The other contextual information 128can include, for example, data detected using near field communications(NFC) or a proximity sensor. Such data can indicate information about auser's location that may not be available from other types ofpositioning systems, such as a global positioning system (GPS). Forexample a near field communications sensor can receive data thatindicates a user is traveling on a particular subway or on a particularbus route. Such information can be processed to identify stops along thesubway or bus route. Another example of contextual information 128 caninclude information pertaining to a user's schedule or calendar. Suchinformation can be processed to determine an amount of time available tothe user, for instance an amount of time available for lunch.

In addition, the intelligence engine 112 can receive the userpreferences 120 and associate such user preferences with the time 114,current location information 116 and/or current motion information 118,and store such associations as learned preferences 130. For example, amovie theater of choice, a cuisine of choice at a certain time of day,or a preferred driving route on a certain day of the week can be storedas learned preferences 130.

Storage of the information 124-128 and learned preferences 130 can beinitiated in any suitable manner. For instance, the storage of theinformation 124-128 and learned preferences 130 can be initiated inresponse to the user requesting location-based services, in response toa user input 122, or in response to a detected parameter 114-118 thatcorresponds to the user preferences 120.

In addition to being used to generate the information 124-128 andlearned preferences 130, the parameters 114-118 can be monitored andcompared to the historical location information 124, historical motioninformation. 126, other contextual information 128 and/or learnedpreferences 130. Based on such comparisons, the intelligence engine 112can determine whether the parameters 114-118 correspond to theinformation 124-128 and/or learned preferences 130 (i.e. whether theparameters 114-118 correspond to an identified user pattern). Forexample, assume that the time, current location and current motionparameters 114-118 indicate that the mobile station 106 is traveling ata particular speed, at a particular location (e.g. a road, highway,railway, etc.) and at a particular time of day. In this case, thehistorical information 124-126 can be processed to identify whetherthere are past instances of such travel.

In response to detecting that at least one or more of the parameters114-118 do indeed correspond to the information 124-128 and/or learnedpreferences 130, the intelligence engine 112 can process thecorresponding information 124-128 and/or learned preferences 130 toidentify location-based information likely to be of most interest to theuser. For example, assume that the information 124-128 indicates that amajority of the time when the user travels in a particular manner ('e.g,at the particular location at approximately the same speed and aroundthe same time of day), the user exits the highway and proceeds to aparticular rest stop. When such travel is again detected, theintelligence engine 112 can anticipate the user may wish to againproceed to the rest stop. The intelligence engine 112 then cancommunicate the request 108 to the location-based services server 104 torequest current information associated with the rest stop. Thelocation-based services server 104 can provide such information in themessage containing the location-based services results 110. As noted,such information can include specials being offered at the rest stop,average wait time for service, fuel prices, or other information theuser may be interested in.

In another example, if learned user preferences 130 indicate that theuser typically eats lunch at approximately the current time 114 and thatthe user prefers a certain type of cuisine, and the other contextualinformation 128 indicates that the user has an appointment in forty-fiveminutes, the intelligence engine 112 can suggest fast food restaurantsthat serve the user's preferred cuisine and which are located along theuser's route of travel. For instance, if the user is riding a subwaytrain and prefers Asian cuisine, the intelligence engine 112 canidentify fast food restaurants at or near the next subway station thatserve Asian cuisine.

The location-based services results 110 can be compared to the userpreferences 120, the learned preferences 130 and/or the other contextualinformation 128 to identify within location-based services results 110the information 132 that most closely correlates to the identified userpattern of the user. For instance, continuing the previous example, ifmore than one restaurant is identified, but the user preferences 120indicate that he prefers restaurants that do not add MSG to their food,the location-based services results 110 can be filtered to identify onlythose restaurants that indicate they do not use MSG. Thus, thelocation-based services results 132 can be narrowly tailored to theuser's present circumstances and preferences. The location-basedservices results 132 can be communicated to a user interface 134 forpresentation to the user. The results 132 can be presented audibly,visually, or in any other suitable manner.

Further, the intelligence engine 112 can receive additional user inputs122 from the user to broaden, narrow or change the location-basedservices search results 132 that are presented. For instance, the userinputs 122 can be processed to enable the user to peruse a portion ofthe location-based services results 110 that may have been originallyfiltered out by the intelligence engine 112 and/or to generate a secondrequest based, at least in part, on the user input 122.

FIG. 2 depicts another communications system 200 that is useful forunderstanding the present invention. As with the communications system100, the communications system 200 also can include the communicationsnetwork 102, the location-based services server 104 and mobile station106. However, in lieu of the intelligence engine 112 being instantiatedon the mobile station 106, in the communications system 200 theintelligence engine 112 can be instantiated on a location-based servicesystem 202. The location-based services server 104 also can beinstantiated on the location-based services system 202. Thelocation-based services system 202 can comprise one or more processingsystems. Such processing systems can include, for example a web server,a network server, a mobile switching center (MSC), a base stationcontroller (BSC), or on any other suitable node of the communicationsnetwork 102.

In such an arrangement, the mobile station 106 can include a clientapplication 204. In one arrangement the client application 204 canprocess the time 114, current location information 116, current motioninformation 118, user preferences 120 and user inputs 122 in order togenerate the historical location information 124, the historical motioninformation 126, the other contextual information 128 and the learnedpreferences 130. Such processing can be performed as previouslydescribed in FIG. 1.

In another arrangement, the client application 204 can forward theinformation 114-130 to the intelligence engine 112 and the intelligenceengine 112 can process the information 114-130 to generate updates tothe historical location information 124, the historical motioninformation 126, the other contextual information 128 and the learnedpreferences 130. The intelligence engine 112 then can forward theupdated information 124-130 to the location-based server 104, which cancommunicate the updated information 124-130 to the client application204 for storage on the mobile station 106. Alternatively, theintelligence engine 112 can store the updated information 124-130 at thelocation-based services system 202.

Regardless of which system component generates the updates to thehistorical location information 124, the historical motion information126, the other contextual information 128 and the learned preferences130, or where such information 124-130 is stored, the client application204 can communicate a request 206 for location-based services to theintelligence engine 112. If the updated information 124-130 is stored onthe mobile station 106, the request 206 can include any applicableinformation selected from among all available information 114-130. If,however, the updated information 124-130 is stored at the location-basedservices system 202, the request 206 need only include applicableinformation selected from among the time 114, current locationinformation 116, current motion information 118, user preferences 120and user inputs 122 in order to generate the information 124-130.

The intelligence engine 112 can process the request 206 to generate therequest 108 previously described with respect to FIG. 1 so as to solicitlocation-based services results 110 that are of interest to the user.The location-based services results 110 can be processed by the clientapplication 204 to generate location-based services results 132 that arepresented via the use interface 134.

FIG. 3 depicts a block diagram of the intelligence engine 112 that isuseful for understanding the present invention. The intelligence engine112 can comprise a learning application 305, a location-based servicesserver interface 310 and a client interface 315. The learningapplication 305 can process the time, current location parameters,current motion parameters, other contextual information, userpreferences and user inputs to generate the historical location andmotion information and the learned preferences. Such information can bestored in a database, a hash table, or any other suitable data file. Theinformation can be received from various mobile station components, forinstance a clock, one or more sensors, one or more receivers and/or oneor more transceivers on the mobile station. In an arrangement in whichthe intelligence engine 112 is located at the location-based servicessystem, at least some of the information can be communicated from themobile station to the intelligence engine 112, as will be describedherein.

The location-based services server interface 310 can communicate withthe location-based services server. In particular, the location-basedservices server interface 310 can send the requests to, and receiveresponses from, the location-based services server. Finally, the clientinterface 315 can receive user inputs and present results to the clientvia the user interface.

FIG. 4 depicts a block diagram of an example of the mobile station 106that is useful for understanding the preset invention. The mobilestation 106 can include a controller 405. The controller 405 cancomprise, for example, one or more central processing units (CPUs), oneor more digital signal processors (DSPs), one or more applicationspecific integrated circuits (ASICs), one or more programmable logicdevices (PLDs), a plurality of discrete components that can cooperate toprocess data, and/or any other suitable processing device. In anarrangement in which a plurality of such components are provided, thecomponents can be coupled together to perform various processingfunctions as described herein.

The mobile station 106 also can include a transceiver 410. Thetransceiver 410 can modulate and demodulate signals to convert signalsfrom one form to another, and can transmit and/or receive such signalsover one or more various wireless communication networks. Inillustration, the transceiver 410 can be configured to communicate datavia IEEE 802 wireless communications, for example, 802.11 and 802.16(WiMax), WPA, or WPA2. In another example, the transceiver 410 cancommunicate data via GSM, TDMA, CDMA, WCDMA, OFDM, or direct wirelesscommunication. Further, the transceiver 410 also can be configured tocommunicate over a wireless communication link using any of a myriad ofcommunications protocols, for example, TCP/IP. In operation, thetransceiver can transmit requests generated by the mobile station andreceive responses from the location-based services server.

The mobile station can include a positioning system 415. The positioningsystem 415 can include, for example, a global positioning satellite(GPS) receiver. The positioning system 415 can detect current locationparameters for the mobile station 106 as well as motion parameters usingmethods known to the skilled artisan. In lieu of, or in addition to, thepositioning system 415, the mobile station 106 can receive positioningand motion parameters from the communications network. For instance,such parameters can be estimated using communication towers to implementradiolocation and/or trilateration. Radiolocation and trilateration alsoare known to the skilled artisan.

The mobile station 106 also can include a user interface 420 comprisingone or more tactile input devices 425 and a display 430. The tactileinput devices 425 can comprise one or more buttons, keys, soft keys,sensors, or any other devices suitable for receiving a tactile userinput. The display 430 can be a liquid crystal display (LCD), a liquidcrystal on silicon (LCOS) display, a cathode ray tube (CRT), a plasmadisplay, or any other suitable display. In one arrangement, the display430 can comprise a touch screen that can receive tactile and/or stylusinputs and communicate such inputs to the controller 405. The tactileinput devices 425 and/or display 430 can receive user inputs toestablish user preferences, receive user selections, or perform anyother suitable electronic device functions.

The user interface 420 further can include an audio processor 435connected to an input audio transducer 440 (e.g. microphone) and anoutput audio transducer 445 (e.g. loudspeaker). The audio processor 435can be integrated with the controller 405 or provided as a separatecomponent that is communicatively linked to the controller 405. Theaudio processor 435 can comprise a CPU, a DSP, an ASIC, a PLD, aplurality of discrete components that cooperate to process audio data,and/or any other suitable audio processing device.

The audio processor 435 can receive output audio signals from thecontroller 405 and communicate such signals to the output audiotransducer 445. Similarly, the audio processor 435 can receive inputaudio signals from the input audio transducer 440 and communicate suchsignals to the controller 405. In one arrangement, speech recognitioncan be implemented to process such signals. For example, the controller105 can execute a speech recognition application to process audiosignals containing user inputs that are received from the user.

Further, additional devices (not show can be components of the userinterface 420. For instance, the user interface 420 also can include aheadset, a speakerphone, or other device(s) communicatively linked tothe mobile station 106 via the transceiver 410, a second transceiver,and/or the communications port.

The mobile station 106 farther can include data storage 450. The datastorage 450 can include one or more storage devices, each of which caninclude, but is not limited to, a magnetic storage medium, an electronicstorage medium, an optical storage medium, a magneto-optical storagemedium, and/or any other storage medium suitable for storing digitalinformation. In one arrangement, the data storage 450 can be integratedinto the controller 405, though this need not be the case.

The intelligence engine 112, user preferences 120, historical locationinformation 124, historical motion information 126, other contextualinformation 128 and learned preferences 130 can be contained on the datastorage 450. The controller 405 can execute the intelligence engine 112to implement the processes and methods described herein which areallocated to the intelligence engine 112. For example, at runtime, theintelligence engine 112 can automatically identify user patterns, storehistorical information corresponding to the user patterns, process thehistorical information to retrieve location-based service informationthat corresponds to one or more identified user patterns, and so on. Asnoted, in an alternate arrangement the intelligence engine 112 can beinstantiated at a location-based services system.

FIG. 5 is a flowchart presenting a method 500 that is useful forunderstanding the present invention. The method 500 can begin in a statein which the mobile station 106 is monitoring current time, location andmotion parameters. Beginning at step 505, the time, location and motionparameters can be processed to identify one or more user patterns. Forexample, a location visited by the user can be identified. Further, alocation visited by a user more than once can be identified. Whether thelocation was visited more than once at a particular time of day, on aparticular day of the week, on a particular day of the month, or on aparticular day of the year also can be identified.

Motion parameters associated with the user also can be identified. Inone arrangement, the motion parameters and/or the location parameterscan be processed to identify a particular mode of transportation used bythe user, and such information can be associated with a user pattern.For example, whether the user is traveling in a motor vehicle, a publictrain, or whether the user is walking can be identified. Still, anyother information relevant to a user's location or motion can beidentified and the invention is not limited in this regard.

Proceeding to step 510, historical information that corresponds to theidentified user pattern can be stored. For instance, historical locationinformation, historical motion information and other contextualinformation can be stored. In addition, specific user preferences can belearned, for example by analyzing user preference settings and userinputs, and such learned preferences also can be stored.

At step 515 current time, location and motion parameters can bemonitored to detect one or more of the parameters that correspond to anidentified user pattern. Referring to decision box 520, if one or moreof the current parameters are detected that correspond to an identifieduser pattern, at step 525 location-based service information thatcorresponds to the identified user pattern can be retrieved, for examplefrom a location-based service server.

If current parameters that correspond to a known user pattern are notdetected, the process can proceed to decision box 530. At decision box530, if a user requests location-based service information, the processcan proceed to step 535 and location-based service information thatcorresponds to the user request can be retrieved from the location-basedservices server. The process can return to step 505 and continue unlessdeactivated or the mobile station is turned off.

FIG. 6 is another flowchart presenting a method. 600 that is useful forunderstanding the present invention. At step 605, at least one userinput can be received indicating a request for a suggested point ofinterest. At step 610, a particular mode of transportation used by theuser and a particular route traveled by the user can be identified. Forexample, if the user is traveling by bus, the fact that he is travelingby bus and the bus route can be identified. If the user is traveling ona subway train, the fact that he is traveling by subway train and thesubway route can be identified. If the user is traveling in a vehicle,the fact that he is traveling by vehicle road on which the user istraveling can be identified. Still, any other mode of transportation andany other routes can be identified and the invention is not limited inthis regard.

Proceeding to step 615, a query can be generated based on the userinput, a time reference (e.g. time of day, day of the week, day of themonth, day of the year, etc.), the particular mode of transportationand/or the route traveled. At step 620 the query can be processed toidentify a point of interest. For example, if the user is traveling bysubway train and the user input requested information on restaurants,the intelligence engine previously described can identify restaurantslocated at, or proximate to, upcoming subway stations. Moreover, thetime of day and other information can be processed to select restaurantslikely to be of greatest interest to the user, as previously described.At step 625 the identified points of interest can be presented to theuser.

The present invention can be realized, in hardware, software, or acombination of hardware and software. The present invention can berealized in a centralized fashion in one processing system or in adistributed fashion where different elements are spread across severalinterconnected processing systems. Any kind, of processing system orother apparatus adapted for carrying out the methods described herein issuited. A typical combination of hardware and software can be aprocessing system with an application that, when being loaded andexecuted, controls the processing system such that it carries out themethods described herein. The present invention also can be embedded ina program storage device readable by a machine, tangibly embodying aprogram of instructions executable by the machine to perform methods andprocesses described herein. The present invention also can be embeddedin an application product which comprises all the features enabling theimplementation of the methods described herein and, which when loaded ina processing system, is able to carry out these methods.

The terms “computer program,” “software,” “application,” variants and/orcombinations thereof, in the present context, mean any expression; inany language, code or notation, of a set of instructions intended tocause a system haying an information processing capability to perform aparticular function either directly or after either or both of thefollowing: a) conversion to another language, code or notation; b)reproduction in a different material form. For example, an applicationcan elude, but is not limited to, a subroutine, a function, a procedure,an object method, an object implementation, an executable application,an applet, a servlet, a MIDlet, a source code, an object code, a sharedlibrary/dynamic load library and/or other sequence of instructionsdesigned for execution on a processing system.

The terms “a” and “an,” as used herein, are defined as one or more thanone. The term “plurality,” as used herein, is defined as two or morethan two. The term “another,” as used herein, is defined as at least asecond or more. The terms “including” and/or “having,” as used herein,are defined as comprising (i.e., open language).

This invention can be embodied in other forms without departing from thespirit or essential attributes thereof. Accordingly, reference should bemade to the following claims, rather than to the foregoingspecification, as indicating the scope of the invention.

What is claimed is:

1. A method for dynamically providing location-based services,comprising: receiving at least one user input indicating a request for asuggested point of interest; generating a query based on the user inputand a time reference; processing the generated query to identify aplurality of points of interest; and presenting the points of interestto a user.
 2. The method of claim 1, further comprising: identifying aparticular mode of transportation used by the user, wherein generatingthe query is further based on the particular mode of transportation. 3.The method of claim 1, further comprising: identifying a particularroute traveled by the user, wherein generating the query is furtherbased on the particular route.